package sctu.edu.java.year2016.team06.yuweimei.day20160603.chapter11_3;

/**
 * 创建Computer类，该类中有一个计算两个数的最大公约数的方法，如果向该方法传递负整数，该方法就会抛出自定义异常。
 * Created by asus on 2016/6/5.
 */

import java.util.Scanner;

public class Computer {
    String rule;

    public Computer() {
        rule = "这两个数必须是正整数！";
    }

    public String getRule() {
        return rule;
    }

    public void creatFile() throws Exception {
        Scanner scan = new Scanner(System.in);
        System.out.println("请输入第一个数：");
        int a = scan.nextInt();
        System.out.println("请输入第二个数：");
        int b = scan.nextInt();
        if ((a < 0 || a != a) || (b < 0 || b != b))
            throw new Exception("a,b不能为负整数");
        else {
            System.out.println("这两个数分别是：" + a + "\t" + b);
            if (a == b) {

                System.out.println("这两个数的最大公约数是：" + a);
            }
            if ((a > b) && (a % b == 0)) {

                System.out.println("最大公约数为：" + b);
            }
            if ((a < b) && (b % a == 0)) {

                System.out.println("最大公约数为：" + a);
            }

            if (a % b != 0) {
                while (a % b != 0) {
                    int c;
                    c = b;
                    b = a % b;
                    a = c;
                }
                System.out.println("最大公约数是：" + b);
            }


        }

    }
}

